package com.songshuai.webapi.baseapi.pojo;

import lombok.Data;

@Data
public class QueryPageRes<T> {

    /**
     * 总条数据
     */
    private Long count;

    /**
     * 返回数据
     */
    private T body;

    /**
     *设置返回结果
     * @param data
     * @param dataCount
     * @param <T>
     * @return
     */
    public  static <T>QueryPageRes setPageData(T data,Long dataCount){
        QueryPageRes<T> res = new QueryPageRes<>();
        res.setBody(data);
        res.setCount(dataCount);
        return res;
    }

    /**
     * 设置返回结果
     * @param data 记录列表
     * @param dataCount 记录总数
     * @param <T>
     * @return
     */
    public  static <T>QueryResponse setQueryResponseData(T data,Long dataCount){
        QueryResponse<QueryPageRes<T>> res = new QueryResponse<>();
        QueryPageRes pageRes =setPageData(data,dataCount);
        res.setData(pageRes);
        return res;
    }

    /**
     * 设置返回结果
     * @param data 记录列表
     * @param dataCount 记录总数
     * @param <T>
     * @return
     */
    public  static <T> QueryRes setQueryResData(T data,Long dataCount){
        QueryRes<QueryPageRes<T>> res = new QueryRes<>();
        QueryPageRes pageRes = setPageData(data,dataCount);
        res.setResult(pageRes);
        return res;
    }
}
